/**
 * @description 定义common模块，进行导出
 */
// state定义
const state = {
    token: '',
    userInfo: {}
}
const getters = {
    // 向外暴露token值
    getToken(_state) {
        return _state.token
    },
    // getToken: _state => _state.token,
    // getToken: function(_state) {
    //         return _state.token
    //     }
    // 向外暴露用户信息接口
    // getUserInfo(_state) {
    //     return _state.userInfo
    // },
    getUserInfo: _state => _state.userInfo
}
const actions = {
    // 异步数据
    tokenAct(_state, _date) {
        Promise.resolve().then(() => {
            _state.commit('setToken', '异步后的数据' + _date)
        })
    }
}
const mutations = {
    // 缓存token
    setToken(_state, _token) {
        _state.token = _token
    },
    // 用户信息
    setUserInfo(_state, _user) {
        _state.userInfo = _user
    }
}
export default {
    // 开启命名空间
    namespaced: true,
    // 四大核心配置
    state,
    getters,
    actions,
    mutations
    // state: {
    //     token: '111'
    // },
    // getters: {
    //     // getter方法要获取到state的值，才能返回state值，所以该方法必须有一个state形参
    //     getToken(_state) {
    //         return _state.token
    //     }
    // },
    // actions: {
    //     // 把处理后的数据提交到mutation中去进行数据更新，接受数据，所以需要两个参数
    //     tokenAct(_state, _date) {
    //         Promise.resolve().then(() => {
    //             _state.commit('setToken', '异步后的数据' + _date)
    //         })
    //     }
    // },
    // mutations: {
    //     // 给state数据赋值，就需要接受数据，那么就需要两个形参
    //     setToken(_state, _token) {
    //         _state.token = _token
    //     }
    // }
}